package com.ruoyi.system.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.system.mapper.BaseStaffMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.BaseCompMapper;
import com.ruoyi.system.domain.BaseComp;
import com.ruoyi.system.service.IBaseCompService;

/**
 * 公司管理Service业务层处理
 * 
 * @author ruoyi
 * @date 2025-08-08
 */
@Service
public class BaseCompServiceImpl implements IBaseCompService 
{
    @Autowired
    private BaseCompMapper baseCompMapper;

    @Autowired
    private BaseStaffMapper baseStaffMapper;

    /**
     * 查询公司管理
     * 
     * @param id 公司管理主键
     * @return 公司管理
     */
    @Override
    public BaseComp selectBaseCompById(String id)
    {
        return baseCompMapper.selectBaseCompById(id);
    }

    /**
     * 查询公司管理列表
     * 
     * @param baseComp 公司管理
     * @return 公司管理
     */
    @Override
    public List<BaseComp> selectBaseCompList(BaseComp baseComp)
    {
        return baseCompMapper.selectBaseCompList(baseComp);
    }

    /**
     * 新增公司管理
     * 
     * @param baseComp 公司管理
     * @return 结果
     */
    @Override
    public int insertBaseComp(BaseComp baseComp)
    {
        baseComp.setCreateTime(DateUtils.getNowDate());
        return baseCompMapper.insertBaseComp(baseComp);
    }

    /**
     * 修改公司管理
     * 
     * @param baseComp 公司管理
     * @return 结果
     */
    @Override
    public int updateBaseComp(BaseComp baseComp)
    {
        baseComp.setUpdateTime(DateUtils.getNowDate());
        return baseCompMapper.updateBaseComp(baseComp);
    }

    /**
     * 批量删除公司管理
     * 
     * @param ids 需要删除的公司管理主键
     * @return 结果
     */
    @Override
    public int deleteBaseCompByIds(String[] ids)
    {
        // 先删除公司下的所有驾驶员
        //baseStaffMapper.deleteBaseStaffByCompIds(ids);
        return baseCompMapper.deleteBaseCompByIds(ids);
    }

    /**
     * 删除公司管理信息
     * 
     * @param id 公司管理主键
     * @return 结果
     */
    @Override
    public int deleteBaseCompById(String id)
    {
        return baseCompMapper.deleteBaseCompById(id);
    }


    /**
     * 查询公司名称
     *
     * @return 结果
     */

    @Override
    public List<BaseComp> selectCompList() {
        return baseCompMapper.selectCompList();
    }
}
